package base;

import base.Util.ImageCache;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.input.Clipboard;
import javafx.scene.input.ClipboardContent;
import java.io.File;
import java.util.List;

public class Main extends Application {
    
    // 全局剪贴板对象
    private static Clipboard clipboard;

    @Override
    public void start(Stage primaryStage) {
        try {
            // 初始化剪贴板
            clipboard = Clipboard.getSystemClipboard();
            
            // 加载主界面FXML
            FXMLLoader loader = new FXMLLoader(getClass().getResource("/FXML/main-view.fxml"));
            Scene scene = new Scene(loader.load(), 1024, 768);

            // 设置窗口标题
            primaryStage.setTitle("图片管理器");
            primaryStage.setScene(scene);

            // 显示窗口
            primaryStage.show();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    public void stop() {
        // 程序退出时清理缓存
        ImageCache.clearCache();
    }
    

     //复制文件到系统剪贴板
    public static boolean copyFilesToClipboard(List<File> files) {
        if (files == null || files.isEmpty()) {
            return false;
        }
        
        try {
            ClipboardContent content = new ClipboardContent();
            content.putFiles(files);
            return clipboard.setContent(content);
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    public static void main(String[] args) {
        launch(args);
    }
}